#pragma once

#include <vector>
#include "SettingsDef.h"
#include "Settings.h"
#include "Language.h"
#include "Theme.h"
#include "resourceppc.h"

//
// Definitions
//

#define SETTINGS_FILE_NAME      TEXT("iConfig.ini")

//
// Helpers
//

#define SendCommand(hWnd, nCmd)         ::SendMessage(hWnd, WM_COMMAND, MAKEWPARAM(nCmd, 0), 0)
#define SendCommandF(hWnd, nCmd, nFlag) ::SendMessage(hWnd, WM_COMMAND, MAKEWPARAM(nCmd, nFlag), 0)
#define PostCommand(hWnd, nCmd)         ::PostMessage(hWnd, WM_COMMAND, MAKEWPARAM(nCmd, 0), 0)
#define PostCommandF(hWnd, nCmd, nFlag) ::PostMessage(hWnd, WM_COMMAND, MAKEWPARAM(nCmd, nFlag), 0)

typedef std::vector<CString> CStringVector;

//
// Messages
//

#define WM_GETMENUBAR         (WM_USER + 1)

// wParam is new value, lParam is hwnd
#define WM_INTVALUECHANGED    (WM_USER + 2)